$table-border: #188eac;
$shadow-colour: rgba(0, 0, 0, 0.15);

html { box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }

html, body {
  padding: 0;
  margin: 0;
}

html {
  height: 100vh;
}

body {
  padding-bottom: 2em;
}

header {
  background-color: $table-border;
  color: #fff;
  padding: .5em 2em;
  margin-bottom: 1em;

  a {
    text-decoration: none;
    color: #fff;

    &:visited { color: #fff; }
  }
}

@media only screen and (min-width: 1000px) {
  .wrapper { display: flex; }
}

@media only screen and (min-width: 1000px) {
  .wrapper { display: flex; }
}

.wrapper {
  padding: 0 1em;

  h3 {
    margin-bottom: 0;
  }
}

.main {
  h1 { margin-top: 0; }
}

#sidebar {
  min-width: 400px;
  padding: 0 1em;

  h1, h2 {
    margin: 0;
    padding: 0;
  }
  h2 {
    padding-top: .5em;
  }

  ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
  }

  section {
    margin-bottom: 1em;
  }
}

table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9em;
  box-shadow: 0 0 20px $shadow-colour;

  thead > tr {
    border-radius: 5px;
    background-color: $table-border;
    color: #fff;
    text-align: left;
  }

  th, td {
    padding: 12px 15px;
  }

  tbody > tr {
    border-bottom: 1px solid #ddd;

    &:nth-of-type(even) {
      background-color: #f3f3f3;
    }

    &:last-of-type {
      border-bottom: 2px solid $table-border;
    }
  }
}

.signature {
  font-family: monospace;
}

.function {
  h3 {
    margin: 0;
    background-color: $table-border;
    color: #fff;
    padding: 2px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
  }

  .content {
    padding: .5em .5em;

    p {
      margin-top: 0;
    }
  }
}

.function, .method {
  box-shadow: 0 0 20px $shadow-colour;
  margin: .5em 0;

  h4 {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid $shadow-colour;
  }
  h5 { margin-bottom: 0; }

  ul {
    list-style-type: none;
    margin: 0;
    margin-top: 5px;
    padding: 0;
  }
}

.object {
  margin-top: 1em;

  .header-link { text-decoration: none; }

  h3 {
    background-color: $table-border;
    color: #fff;
    margin-top: 0;
    padding: 2px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
  }

  .content {
    border: 1px solid $shadow-colour;
    padding: .5em .5em;

    .method {
      padding: .5em .5em;
    }

    p {
      margin-top: 0;
    }
  }
}

.header-link {
  margin-left: .5em;
}

.structure {
  border-bottom: 2px solid $shadow-colour;
  padding-bottom: 1em;

  ul {
    margin: 0;
  }
  h5 {
    margin-bottom: 0;
  }
}

.enum {
  p {
    margin-top: .25em;
  }
}
